/*
7-123 空心字母金字塔
分数 10
作者 翁恺
单位 浙江大学

输入一个大写的英文字母，输出空心的字母金字塔。
输入格式:

一个大写英文字母。
输出格式:

一个空心的大写英文字母金字塔，其中第1层的“A”在第1行的第40列，列从1开始计数。
输入样例:

E

输出样例:

                                       A
                                      B B
                                     C   C
                                    D     D
                                   EEEEEEEEE
*/
#include <stdio.h>

void printBlank(int n) {
    for (int i = 0; i < n; i++) {
        putchar(' ');
    }
}

void printChar(char c, int beforeBlank, int midBlank) {
    printBlank(beforeBlank);
    putchar(c);
    printBlank(midBlank);
    putchar(c);
    putchar('\n');
}

void printLastLine(char c, int beforeBlank, int n) {
    printBlank(beforeBlank);
    for (int i = 0; i < n; i++) {
        putchar(c);
    }
    putchar('\n');
}

int main() {
    char lastChar;
    scanf(" %c", &lastChar);
    // print A
    printBlank(39);
    printf("A\n");
    if (lastChar < 'B') { 
        return 0;
    }
    // print B - lastChar
    int beforeBlank = 38, midBlank = 1;
    for (char c = 'B'; c < lastChar; beforeBlank--, midBlank+=2, c++) {
        printChar(c, beforeBlank, midBlank);
    }
    printLastLine(lastChar, beforeBlank, midBlank+2);
    return 0;
}
